package com.chengyu.core.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.chengyu.core.model.ReceiptUser;
import com.chengyu.core.model.ReceiptUser;
import com.chengyu.core.request.PageParamRequest;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * <p>
 * 用户发票信息 服务类
 * </p>
 *
 * @author macro
 * @since 2024-01-17
 */
public interface ReceiptUserService extends IService<ReceiptUser> {


    /**
     * 获取列表
     *
     * @param request          请求参数
     * @param pageParamRequest 分页参数
     * @return PageInfo
     */
    PageInfo<ReceiptUser> getList(ReceiptUser request, PageParamRequest pageParamRequest);


    /**
     * 详情
     *
     * @param id id
     * @return ReceiptUserVo
     */
    ReceiptUser getVoByFront(Integer id) ;


    /**
     * 获取详情
     *
     * @param id id
     * @return ReceiptUser
     */
    ReceiptUser getDetail(Integer id);


    /**
     * 获取移动端热门列表
     *
     * @return List<ReceiptUser>
     */
    List<ReceiptUser> getHotList();

    /**
     * 新增
     *
     * @param articleRequest 新增参数
     * @return Boolean
     */


    Boolean pushReceiptUser(ReceiptUser articleRequest);
    Boolean create(ReceiptUser articleRequest);
    Boolean updateReceiptUser(ReceiptUser articleRequest);

    /**
     * 删除
     *
     * @param id id
     * @return Boolean
     */
    Boolean deleteById(Integer id);

    Boolean deleteByIdWithMemberId(Integer id,Integer memberId);

    /**
     * 是否使用分类
     *
     * @param categoryId 分类ID
     * @return Boolean
     */
    Boolean isUseCategory(Integer categoryId);



    /**
     * 开关
     * @param id id
     * @return Boolean
     */
    Boolean ReceiptUserSwitch(Integer id);



}
